home *** CD-ROM | disk | FTP | other *** search
- From: shartley@dunx1.ocs.drexel.edu (shartley)
- Newsgroups: comp.os.misc,misc.books.technical
- Subject: teaching operating systems
- Date: 7 Dec 1994 11:34:28 -0500
-
- In late January or early February, Oxford Univ. Press will publish my book
-
- "Operating Systems Programming: The SR Programming Language".
- The ISBN is 0-19-5095790. Contact them at (800) 451-7556 for
- a copy. Suggested list price is $25.00.
-
- The example SR programs used in the book are avaliable by anonymous ftp
- >from site mcs.drexel.edu in directory pub/shartley; retrieve file
- book_SR_examples.tar.gz or book_SR_examples.tar.Z (remember to use binary
- mode) to get a tar archive compressed with the GNU compression program
- gzip or the UNIX utility compress, respectively.
-
- Steve Hartley
- Drexel University
- shartley@mcs.drexel.edu
-
- Here is the Preface:
-
- SR is a language for concurrent programming. This book describes the SR
- language, presents some examples of SR programs in the context of an operating
- systems or concurrent programming course, and provides some programming as-
- signments in the form of open Student Laboratories. The SR language can be
- used by instructors of concurrent programming or operating systems courses to
- give students experience in writing concurrent programs that use multiple
- processes, semaphores, monitors, message passing, remote procedure calls, and
- the rendezvous. The language can also be used for parallel computing in a
- shared-memory multiprocessor or a distributed memory cluster environment.
- The intended audience is undergraduate and graduate students enrolled in
- concurrent programming and operating systems classes. Prerequisites for stu-
- dents are knowledge of a high-level programming language like C or Pascal and
- operating systems concepts. See the Instructor's Manual for more detailed
- prerequisites. This book is designed to be used during an operating systems
- course in conjunction with one of the standard texts to provide concurrent
- programming experience. The book can also be used in a full semester follow-
- on course to operating systems to provide more extensive programming experi-
- ence. Since most concepts and terms are defined, the book can be used as the
- sole text in an introductory concurrent programming course that precedes the
- operating systems course.
- The required computing environment is a UNIX platform such as a Sun 3, Sun
- 4, Sequent Symmetry, DECstation, SGI Iris, NeXT, HP RISC, or PC compatible
- running Linux.
- The SR examples and programming assignments in this book have been used suc-
- cessfully in undergraduate concurrent programming and operating systems
- courses at Drexel University, Philadelphia, Pennsylvania, and Trinity Univer-
- sity, San Antonio, Texas. The book arose out of a collection of handouts and
- class notes distributed to students during 1991-94 and is a greatly expanded
- version of [some earlier journal papers].
- This book has several important features.
- * The material is keyed to four standard operating systems texts: Deitel,
- Silberschatz and Galvin, Stallings, and Tanenbaum. The relevant sections of
- these texts for the major concepts, such as semaphores and monitors, are indi-
- cated.
- * Each of the numerous example programs in this book includes output from
- one or two sample runs to show how the program works.
- * Algorithm animation using the animator interpreter from the XTANGO sys-
- tem is described and used in several of the examples.
- * Numerous programming assignments in the form of open Student Labora-
- tories are given.
- The example programs in this book will be made available by anonymous ftp at
- site mcs.drexel.edu. Contact the author for further details.
-
- Here is the TOC:
-
- Operating Systems Programming
- Hardware Basics
- Hardware and Software Interrupts
- Hardware Protection
- CPU Scheduling
- The SR Programming Language
- Sequential Features
- Additional Sequential Examples and Features
- Lab: Sequential SR
- Multiple Resources
- Lab: Resources and Capabilities
- Additional Features
- Animating Programs with XTANGO
- Lab: XTANGO Animation
- Concurrent Programming
- Multiple Processes in One Resource
- Multiple Processes in Multiple Resources
- Simulated versus Real Concurrency
- Debugging Techniques
- Race Conditions and Process Synchronization
- Lab: Race Conditions
- Architecture and Shared Memory Systems
- The Mutual Exclusion Problem
- Semaphores
- SR Semaphores
- Classical Operating Systems Problems
- Semaphore Solutions
- The Producers and Consumers
- The Sleeping Barber
- The Dining Philosophers
- The Readers and Writers
- Binary Semaphores
- Lab: Semaphores
- Assignment: Fix Race Condition
- Assignment: Multiple Producers and Consumers
- Assignment: Another Classical Problem
- Assignment: Multiple Sleeping Barbers
- Assignment: Dining Philosophers
- Assignment: Fair Readers and Writers
- Assignment: Baboons Crossing a Canyon
- Assignment: Fraternity Party
- Assignment: Jurassic Park
- Animating Operating Systems Algorithms
- Lab: Classical Problem Animation
- Monitors
- Monitors and SR
- The Producers and Consumers
- The Dining Philosophers
- The Readers and Writers
- Implementing Monitors with Semaphores
- Lab: Monitors
- Assignment: Fair Baboons
- Assignment: Sleeping Barber
- Assignment: Fair Dining Philosophers
- Assignment: Fraternity Party
- Assignment: Bakery
- Message Passing and the Rendezvous
- Message Passing
- Message Passing in SR
- Concurrent Programs and Message Passing
- Distributed Mutual Exclusion
- Miscellaneous Examples
- Lab: Message Passing
- Assignment: Merge Sort
- Assignment: Pipeline Sieve of Eratosthenes
- Assignment: Compare/Exchange Sort
- Assignment: Speedup
- Assignment: Algorithm Animation
- Rendezvous
- Classical Problems Using Rendezvous
- Nested in Statements
- A Lock Resource
- The Distributed Dining Philosophers
- RPC and Client-Server Programming
- Summary of Operations and Invocations
- Lab: Rendezvous
- Assignment: Fair Baboons
- Assignment: Sleeping Barber
- Assignment: Fair Readers and Writers
- Assignment: Fair Dining Philosophers
- Assignment: Fraternity Party
- Assignment: Bakery
- Assignment: Banker's Algorithm
- More Animation with XTANGO
- Lab: Algorithm Animation
- Parallel Computing
- Coarse-Grained Concurrency in SR
- Patterns of Communication
- Data Parallelism
- Shared Memory Examples
- Message Passing Examples
- Integrating Animator into SR
- Lab: Parallel Computing
- Assignment: Speedup
- Assignment: Race Condition
- Assignment: No Race Condition
- Instructor's Manual
- Sample Lab Solutions
- Semaphores
- Monitors
- Message Passing
- Rendezvous
- Parallel Computing
-
-
-